Cloud computing represents a type of computing that relies on allocating and sharing computing resources in the form of one or more services to requesting applications over a network such as the Internet. The allocation of services may be driven by performance predictions, such as predicting future workloads for currently existing cloud services, as well as new cloud services that have not yet been allocated. Predicting workloads enables system managers to engage in more efficient management and optimization of computing resources across physical, virtual and cloud environments to deliver cloud services to end users. For example, predicting and analyzing workloads enables system managers to more efficiently allocate, provision, and deploy cloud services and resources, enforce load balancing and security policies on such services and resources, and validate quality-of-service end-user requirements offered to end users. As workloads increase in complexity and demand higher performance capabilities, providing the cloud services necessary to support such workloads has become both labor-intensive and time consuming.